/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package tsb.gestores;

import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
import tsb.dominio.enumeraciones.AsignacionIP;
import tsb.dominio.interfaces.IP;
import tsb.dominio.dispositivos.hostfinal.HostFinal;
import tsb.dominio.dispositivos.hostfinal.*;

/**
 *
 * @author Fede
 */
public class Matriz {
    private List listaInterfaces;

    public Matriz() {
         listaInterfaces = new ArrayList();
    }
    
    public boolean add(HostFinal host)
    {
        return this.listaInterfaces.add(host);
        
    }
    
    public PC getPC(String nombre)
    {
        Iterator iter= this.listaInterfaces.iterator();
        while(iter.hasNext())
        {
            PC pc = (PC) iter.next();
            if(pc.getNombreAMostrar().compareTo(nombre)==0)
            {
                return pc;
            }
        }
        return null;
    }
    
     public boolean editarPC(PC pc)
    {
        Iterator iter= this.listaInterfaces.iterator();
        while(iter.hasNext())
        {
             PC pc1 = (PC) iter.next();
             if(pc.getNombreAMostrar().compareTo(pc1.getNombreAMostrar())==0)
             {
                 System.out.println(pc.toString());
                 pc1=pc;
                 return true;
             }
        
        }
        return false;
    }
     
     public Server getServer(String nombre)
    {
        Iterator iter= this.listaInterfaces.iterator();
        while(iter.hasNext())
        {
            Server server = (Server) iter.next();
            if(server.getNombreAMostrar().compareTo(nombre)==0)
            {
                return server;
            }
        }
        return null;
    }
     
     public boolean editarServer(Server server)
     {
          Iterator iter= this.listaInterfaces.iterator();
        while(iter.hasNext())
        {
             Server server1 = (Server) iter.next();
             if(server.getNombreAMostrar().compareTo(server1.getNombreAMostrar())==0)
             {
                 System.out.println(server.toString());
                 server1=server;
                 return true;
             }
        
        }
        return false;
         
     } 
     
     public Impresora getImpresora(String nombre)
    {
        Iterator iter= this.listaInterfaces.iterator();
        while(iter.hasNext())
        {
            Impresora impresora = (Impresora) iter.next();
            if(impresora.getNombreAMostrar().compareTo(nombre)==0)
            {
                return impresora;
            }
        }
        return null;
    }
    
     public boolean editarImpresora(Impresora impresora)
    {
        Iterator iter= this.listaInterfaces.iterator();
        while(iter.hasNext())
        {
             Impresora imp1 = (Impresora) iter.next();
             if(impresora.getNombreAMostrar().compareTo(imp1.getNombreAMostrar())==0)
             {
                 System.out.println(impresora.toString());
                 imp1=impresora;
                 return true;
             }
        
        }
        return false;
    }
             
             
    
    
}
